package com.smt.modules.bus.service;

import com.baomidou.mybatisplus.service.IService;
import com.smt.common.utils.PageUtils;
import com.smt.common.utils.R;
import com.smt.modules.bus.entity.MemberUserEntity;
import com.smt.modules.bus.entity.ScheduleEntity;
import com.smt.modules.bus.vo.ScheduleVo;

import java.util.List;
import java.util.Map;

/**
 * 日程安排表
 *
 * @author murong
 * @email 981620741@qq.com
 * @date 2018-09-29 15:37:08
 */
public interface ScheduleService extends IService<ScheduleEntity> {

    PageUtils queryPage(Map<String, Object> params);

    /**
     * 保存日程
     *
     * @param schedule
     * @param userId
     * @return
     */
    R save(ScheduleVo schedule,Long userId);

    /**
     * 获取事件详细信息
     *
     * @param id
     * @return
     */
    R info(Long id);
    /**
     * 筛选多个人员日程
     *
     * @param projectId
     * @param userIds
     * @param date
     * @return
     */
    R memberSchedules(List<Long> userIds,Long projectId,String date);

    /**
     * 假删除
     *
     * @param id
     * @param userId
     * @return
     */
    R deleteSchedules(Long id,Long userId);


    /**
     * 修改日程
     *
     * @param schedule
     * @param userId
     * @return
     */
    R updateEvent(ScheduleVo schedule,Long userId);

    /**
     * 添加日程
     *
     * @param scheduleInfo
     */
    void addScheduleInfo(Object scheduleInfo);
}

